This invention pertains to neural network technology, and more specifically, to a novel neural network system and method for scheduling manufacturing resources in a dynamic factory floor environment. Factory floor scheduling involves building a schedule by assigning manufacturing resources (i.e. start and end times and machines) to each operation of a work order (also known as production, job, or manufacturing orders) which is subjected to a set of production constraints (e.g. resource requirements, quality standards, priority of customer, etc.). FIG. 1 shows, in block diagram form, key concepts concerning factory floor scheduling process. Referring now to FIG. 1, work orders 810 which represent demands from customers together with production constraints 850 such as machine workload and performance goals, etc. are input to drive scheduling process 800 to produce a feasible factory floor schedule 860.
FIG. 2 shows a screen of the data which work order 810 may contain. Typically these data are entered by a production planner into a database. Data related to work order 810 can then be retrieved from the database for use by scheduling process 800. An example of these related data is depicted in the example of a Part Data Screen, as shown in FIG. 3. Given part number 910 from work order 810, data relevant to part number 910, such as family group it belongs to, standard lot size, run hours, tooling required, etc., are then retrieved from the database and used in scheduling process 800 (FIG. 1). The output of scheduling process 800 is a factory floor schedule 860 which is normally represented in the form of a Gantt chart. An example of such a Gantt chart is shown in FIG. 4. It is to be understood that FIGS. 2, 3, and 4 are merely examples for purposes of illustration.
For the past three decades, numerous methods such as MRP II 830 (for example, refer to Kanet, "MRP 96: Time to Rethink Manufacturing Logistics", Production and Inventory Management journal, 2nd Quarter, 1988), and simulation 840 (for example, refer to MacFarland, "Shop Floor Scheduling and Control Using Simulation Technology," Integrated Manufacturing, May 1990) as as shown in FIG. 1 have been developed to tackle scheduling problems on the factory floor. However, most of these prior art methods are not designed for scheduling in a dynamic factory floor environment. In reality, all factory floors are dynamic. This is because there are just too many variables and factors both on the factory floor and from marketing for a production schedule to be valid for an entire day or even a single shift. For example, machine breakdown, operator and tooling availability, and changes in the demand and order requirements all contribute to scheduling and factory floor problems. Because a schedule is generated as a plan to utilize given resources, conflicts result when resource changes occur. Therefore a good factory floor scheduling system must be able to adjust the schedule to accommodate unexpected situations, changes in order requirements, and other environmental conditions. MRP II 830 systems as shown in FIG. 1 are the most popular production scheduling tools for multi-product, small lot size job shop production environment. Despite its popularity, the MRP II 830 system has not been widely used as a scheduling tool in the dynamic factory floor due to its many deficiencies.
Other approaches to dynamic factory floor scheduling tend to be too rigid and too complicated to be applicable in a reallife scheduling environment. Simulation 140 technique as shown in FIG. 1, for example, require accurate problem formulation to make a sharp distinction between constraints (which must be satisfied) and costs. A solution which achieves a very low cost but violates one or two constraints is simply not allowed. In a real-life scheduling environment, it is usually preferable to schedule work orders with the same part number together so that the number of machine setups can be reduced. But this is not an absolute constraint. It does not apply when a work order has different due date priority. These types of "soft" constraints are inherent in many scheduling environments and the optimal solution is the one which minimizes the total number violations of soft constraints.
Neural network technology is beginning to enjoy wide-spread popularity in recent years. Neural networks are mathematical models of human biological brain. They have powerful learning algorithms that allow an application system to learn from past examples. They also possess many unique and useful properties such as parallel processing, which offer a completely different computational paradigm as compared to other approaches. In the area of scheduling, several researchers have applied neural network technology to solve this type of problem. Most of these approaches typically attempt to solve scheduling problem of not more than ten work orders 810 by using an iterative improvement paradigm with a global objective function to be optimized to search for a near-optimal solution. Examples of such neural networks are simulated annealing or Gaussian machine (for example, please refer to Akiyama, et al., "The Gaussian Machine: A Stochastic Neural Network for Solving Assignment Problems," Journal of Neural Network Computing, Winter 1991). However these approaches suffer great limitation when facing real-life scheduling environment where at any time there can be as many as 300-500 existing and new work orders 810 to be scheduled.